Automated Documentation
for Rational Rose Using SoDA


SoDA(R) automates the production of software documents and substantially reduces the time and effort required to create documentation. SoDA makes your software documentation more useful by improving its quality, consistency, and accessibility in all phases of the software-development lifecycle.

With SoDA, you can automatically create documents from your Rational Rose(R) models. You can traverse the semantic relationships in the Rational Rose model, extracting graphical and textual information to create customizable documents. Rational Rose provides a powerful capability to create, verify, and visualize your object-oriented software analysis and design. Using SoDA, you can take this capability one step further, quickly enhancing and disseminating your information by automatically generating online or hard-copy documentation.

With SoDA, you can also document your C++ source code and extract information directly from the code. Combined with the reverse-engineering capability of Rational Rose/C++, SoDA is the ideal solution for documenting legacy code.

The SoDA/Rational Rose solution for documentation

First, you create and manipulate analysis and design information using Rational Rose, or you reverse engineer it from C++ code using Rational Rose/C++.

Templates

To document this information, you start with a SoDA template. Templates define the structure and format of your final documents and the mapping between document sections and elements of your Rational Rose model. You can use one of SoDA's standard templates without modification, modify an existing template, or create a new template with SoDA's easy-to-use, intuitive graphical user interface on top of a WYSIWYG editor.

The template editor understands the semantics of the Rational Rose data model, and therefore, you can create document structures that reflect the structure of the Rational Rose model. For example, as illustrated in the figure below, you can specify that Section 2 will contain the top-level class diagram in Rational Rose and that there will be a Section 3.X for every class that appears on the top-level diagram.

Document generation

Once you have created a template, you can use it again on any of your Rational Rose models simply by specifying the model you want to document and telling SoDA to generate.

Depending on how you created the template, SoDA will generate a complete document entirely from the Rational Rose model or a document with placeholders for supplemental information. You can enhance the document by adding text, tables, figures, and so on directly into the document using SoDA's WYSIWYG editor.

Document merging

When your Rational Rose model changes, SoDA can regenerate your document without losing the supplemental information that you entered manually. During this unique process, called Intelligent Document Merging(TM), SoDA compares your existing document with the Rational Rose model, updates outdated sections, removes irrelevant sections, and inserts new sections--all without overwriting the supplemental information you previously entered.

Requirements traceability

You can assign requirements to classes and scenario diagrams. Then, you can automatically generate requirements traceability tables that show which classes and scenarios satisfy a particular requirement and vice versa. SoDA gives you control over your requirements by helping you allocate, review, and analyze them.

SoDA's unique value

The analysis and design information you create with Rational Rose is an important asset. With SoDA, you can leverage that asset and automatically create software documentation. If you produce or plan to produce documentation manually, SoDA will save you significant time and money. If you want to produce software documentation but have not been able to spare the resources, SoDA's automated capabilities will make it possible.

Platform availability

SoDA is currently available for Sun workstations and will soon be available on all major UNIX platforms. SoDA can document any Rational Rose model, regardless of the platform on which it was created.


D-134; last updated 10/2/95